Wearable electronic navigation system

ABSTRACT

The methods and systems disclosed herein provide a server that periodically monitors a user&#39;s location using one or more beacons while periodically monitoring hazardous conditions using a variety of electronic sensors, such as thermographic imaging. When the user is within a predetermined proximity of a hazardous condition the server transmits an instruction to an electronic wearable device to present a notification (e.g., haptic, noise, and the like) warning the user of the hazardous condition.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation application of U.S. patentapplication Ser. No. 16/169,867, filed Oct. 24, 2018, which isincorporated herein by reference in its entirety.

TECHNICAL FIELD

This application relates generally to location identification andnavigating users via electronic wearable navigation devices.

BACKGROUND

As location and movement-tracking technology allows for more efficienttracking and monitoring user locations, more people rely on technologiesfor indoor and outdoor navigation. However, several technologicalshortcomings have also been identified and have created a new set ofchallenges. Existing and conventional navigation systems do not providean accurate identification of obstacles and hazardous areas.Conventional indoor and/or outdoor navigation systems use a retroactivemethodology where a navigation device identifies an obstacle after thenavigation device (or the user operating the navigation device) has madecontact with the obstacle. For instance self-driven robotic devices,such as robotic vacuum cleaners or other household items, identifyobstacles after detecting an impact with the obstacle. Subsequently, theself-driven robotic devices change course to avoid another impact. Asexpected, these navigation systems may not be suitable for human userswith disabilities, such as visually impaired users.

SUMMARY

For the aforementioned reasons, there is a need for an accurate systemand navigation method, which would proactively and accurately identifyobstacles and hazardous areas and proactively warn users to avoidcontact with the identified obstacles and hazardous.

Disclosed herein are systems and methods for utilizing multipleelectronic sensors (e.g., beacons, accelerometers, infrared thermalimaging cameras, sonar cameras, gyroscope, compass, ambient lightsensor, altimeter, and the like) to identify a user's location anddirection, velocity, and acceleration of movements. The disclosedsystems and methods also utilize multiple electronic sensors (e.g.,thermal imaging cameras, infrared cameras, and ultrasonic cameras) toidentify any obstacles or hazardous areas/materials. Furthermore, thedisclosed systems and methods may proactively determine whether a useris within a predetermined proximity to a hazardous area/material and mayproactively notify/warn the user utilizing an electronic navigationdevice, which, in some environments, can be a wearable device. Thewarning notification may be auditory, visually, haptic, and the like.

In an embodiment, a method comprises periodically monitoring, by aserver, location of a wearable electronic user device by periodicallyreceiving, via the wearable electronic user device, at least one uniqueidentifier associated with one or more beacons; periodically receiving,by the server, obstacle data from one or more electronic sensors, theobstacle data corresponding to an image of one or more obstacles withina first predetermined proximity to the location of the wearableelectronic user device monitored via the one or more beacons; upondetermining an obstacle within a second predetermined proximity to thelocation of the wearable electronic user device monitored via the one ormore beacons: generating, by the server, an instruction to present awarning notification, wherein the warning notification corresponds to aproximity value between the location of the wearable electronic userdevice and the obstacle; and transmitting, by the server, theinstruction to the wearable electronic user device, whereby uponreceiving the instruction, wearable electronic user device presents thewarning notification.

In another embodiment, a computer system comprises one or more beaconsconfigured to transmit unique identifiers; one or more electronicsensors configured to capture and transmit image data; a wearableelectronic user device configured to receive unique identifiers from theone or more beacons and further configured to present a warningnotification; and a server in communication with the one or more beaconsand the one or more electronic sensors, the server configured to:periodically monitor location of the wearable electronic user device byperiodically receiving, via the wearable electronic user device, atleast one unique identifier associated with one or more beacons;periodically receive obstacle data from one or more electronic sensors,the obstacle data corresponding to an image of one or more obstacleswithin a first predetermined proximity to the location of the wearableelectronic user device monitored via the one or more beacons; upondetermining an obstacle within a second predetermined proximity to thelocation of the wearable electronic user device monitored via the one ormore beacons: generate an instruction to present a warning notification,wherein the warning notification corresponds to a proximity valuebetween the location of the wearable electronic user device and theobstacle; and transmit the instruction to the wearable electronic userdevice, whereby upon receiving the instruction, wearable electronic userdevice presents the warning notification.

In another embodiment, a method comprises periodically monitoring, by aserver, location of a wearable electronic user device by periodicallyreceiving, via the wearable electronic user device, at least one uniqueidentifier associated with one or more beacons; upon determining thelocation of the wearable electronic user device, retrieving, by theserver, a hazard within a proximity of the location of the wearableelectronic user device where the server identifies at least one beaconassociated with the hazard; upon receiving, via the wearable electronicuser device, a unique identifier of at least one beacon associated withthe hazard and upon determining that the location of the wearableelectronic user device is within a predetermined proximity to thehazard: generating, by the server, an instruction to present a warningnotification, wherein the warning notification corresponds to aproximity value between the location of the wearable electronic userdevice and the hazard; and transmitting, by the server, the instructionto the wearable electronic user device, whereby upon receiving theinstruction, wearable electronic user device presents the warningnotification.

In another embodiment, a computer-implemented method comprisesperiodically monitoring, by a server, location of an electronic userdevice by periodically receiving, via the electronic user device, atleast one unique identifier associated with one or more beacons;retrieving, by the server, a location of a hazard associated with theidentified location of the electronic user device; periodicallymonitoring, by the server, location of an obstacle by periodicallyreceiving, via one or more electronic sensors associated with theidentified location of the electronic device, navigation data; upondetermining that a location of the electronic user device is within apredetermined proximity to the location of the obstacle or the locationof the hazard: generating, by the server, an instruction to present awarning notification, wherein the notification corresponds to aproximity value between the location of the user device and the locationof the hazard or the location of the obstacle; transmitting, by theserver, the instruction to the electronic user device, whereby uponreceiving the instruction, electronic user device presents thenotification.

In another embodiment, a computer system comprises one or more beaconsconfigured to transmit unique identifiers; one or more electronicsensors configured to capture and transmit navigation data; anelectronic user device configured to receive unique identifiers from theone or more beacons and further configured to present a warningnotification; and a server in communication with the one or more beaconsand the one or more electronic sensors, the server configured toperiodically monitor location of the electronic user device byperiodically receiving, via the electronic user device, at least oneunique identifier associated with the one or more beacons; retrieve alocation of a hazard associated with the location of the electronic userdevice; periodically monitor location of an obstacle by periodicallyreceiving, via one or more electronic sensors associated with thelocation of the electronic user device, navigation data; upondetermining that a location of the electronic user device is within apredetermined proximity to the location of the obstacle or the locationof the hazard: generate an instruction to present a warningnotification, wherein the warning notification corresponds to aproximity value between the location of the user electronic device andthe location of the hazard or the location of the obstacle; and transmitthe instruction to the electronic user device, whereby upon receivingthe instruction, electronic user device presents the warningnotification.

In another embodiment, a computer method comprises periodicallymonitoring, by a server, location of a user mobile device byperiodically receiving, via an application executing on the user mobiledevice, at least one unique identifier associated with one or morebeacons; retrieving, by the server, a location of a hazard associatedwith the identified location of the user mobile device; periodicallymonitoring, by the server, location of an obstacle by periodicallyreceiving, via one or more electronic sensors associated with theidentified location of the user mobile device, navigation data; upondetermining that a location of the user mobile device is within apredetermined proximity to the location of the obstacle or the locationof the hazard: generating, by the server, an instruction to present awarning notification, wherein the notification corresponds to aproximity value between the location of the user mobile device and thelocation of the hazard or the location of the obstacle; transmitting, bythe server, the instruction to a wearable electronic device associatedwith the user, whereby upon receiving the instruction, wearableelectronic device presents the notification.

It is to be understood that both the foregoing general description andthe following detailed description are exemplary and explanatory and areintended to provide further explanation of the disclosed systems andmethods for providing beacon-based navigation system.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing summary, as well as the following detailed description, isbetter understood when read in conjunction with the appended drawings.For illustrating the claimed subject matter, the drawings show exampleconstructions of various embodiments. However, the claimed subjectmatter is not limited to the specific methods and instrumentalitiesdisclosed.

FIG. 1 illustrates an example of a computer environment for providing anavigation system having an electronic wearable navigation device,according to an embodiment.

FIG. 2A illustrates a flowchart depicting operational steps of a methodfor providing a navigation system having an electronic wearablenavigation device, according to an embodiment.

FIG. 2B illustrates a schematic diagram of different warningnotifications presented by an electronic wearable navigation, accordingto an embodiment.

FIG. 2C illustrates an example of an electronic wearable navigationdevice, according to an embodiment.

FIG. 3A illustrates an example of an indoor navigation method using anavigation system having one or more electronic wearable navigationdevices, according to an embodiment.

FIG. 3B illustrates an example of an indoor navigation method using anavigation system having one or more electronic wearable navigationdevices, according to an embodiment.

FIG. 4 illustrates an example of an outdoor navigation method using anavigation system having an electronic wearable device, according to anembodiment.

DETAILED DESCRIPTION

The subject matter of the described embodiments is described withspecificity to meet statutory requirements. However, the descriptionitself is not intended to limit the scope of this patent. Rather, theinventors have contemplated that the subject matter might also beembodied in other ways, to include different steps or elements similarto the ones described in this document, in conjunction with otherpresent or future technologies. Moreover, although the term “step” maybe used herein to connote different aspects of methods employed, theterm should not be interpreted as implying any particular order among orbetween various steps herein disclosed unless and except when the orderof individual steps is explicitly described.

FIG. 1 illustrates components of a navigation system 100 having anelectronic wearable navigation device, according to an embodiment. In atleast one configuration, the navigation system 100 comprises ananalytics server 110, a communication network 120, an external datasource 130, beacon 141, beacon 142, beacon 143 (collectively “beacons140”), smart camera 161, thermographic camera 162, and ultra-soniccamera 163 (collectively “electronic sensors 160”), and an electronicnavigation device. The analytics server 110 may communicate with thebeacons 140, electronic sensors 160, the electronic notification device150, and the external data source 130 using the communication network120, such as the Internet, secure network, or a cloud-basedcommunication.

The analytics server 110 may perform various analytics on data recordsreceived from the beacons 140, electronic sensors 160, and/or externaldata source 130 and may generate and transmit instructions to theelectronic notification device 150 to present warning notifications. Theanalytics server 110 may be any computing device comprising a processorcapable of performing the various tasks and processes described herein.Non-limiting examples of the analytics server 110 may include a server,desktop, laptop, tablet, and the like. The analytics server 110comprises any number of computer-networking components, which facilitateinter-device communications via the communication network 120. There maybe any number of distinct computing devices functioning as the analyticsserver 110 in a distributed computing environment.

The analytics server 110 may communicate data records and instructionsto any of the computing devices illustrated in FIG. 1 . The analyticsserver 110 may also transmit data records to an internal or externaldatabase (not shown in FIG. 1 ) where the data records may be stored inthe database (or a cloud storage system) and where various analytics maybe performed on the stored data in accordance with instructions from theanalytics server 110. For instance, all location data, obstacle data,geo-fencing data, notification data, user preferences, and any otherdata received in conjunction with providing the navigation system 100may be stored in the database and analyzed to provide better and moreaccurate navigation services to the user. The analytics server 110 mayalso host an online service, such as cloud-computing applicationservice, a website, or any other service that provides customer-facingweb-based applications that collect customer data through web-basedinteractions. For instance, a user may provide user preferences (e.g.,notification preferences) and/or navigation data (e.g., an existingfloor map of a location, such as the user's dwelling, as shown in FIG. 3).

The beacons 140 may be hardware transmitters and communication devices,which communicate with other electronic devices, such as the electronicnotification device 150. The beacons 140, in some embodiments, mayutilize Bluetooth low energy (BLE) transmission technology tocommunicate with electronic devices within a pre-determined proximityzone, such as the proximity zones 141 a, 142 a, and 143 a. The beacons140 may broadcast an identifier to nearby portable electronic deviceslocated within the proximity zones 141 a, 142 a, and 143 a, such as theelectronic notification device 150. In an embodiment, proximity zones141 a, 142 a, and 143 a represent the range of transmission ofidentifier by each beacon within the beacons 140. For example, thebeacons 140 may be instructed (by the analytics server 110) to transmitidentifier within a radius of 10 feet. Additionally or alternatively,some smartphones can act as beacons.

In some embodiments, the beacons 140 may transmit a Universally UniqueIdentifier (UUID) as an identifier. A UUID is a 128-bit value identifierused in software construction. The analytics server 110, may then,transmit said UUID and query an internal or external database (oranother third-party database associated with the use or a location ofthe beacons 140) for any information associated with said UUID, such aslocation of the beacon. The frequency of sending the signal can also beprogrammable. For example, a signal can be sent every 100-400milliseconds. Beacons 140 can also be placed strategically indoors oroutdoors to perform many actions.

As used herein, the term “Beacon” applies to any device, mobile orfixed, that is capable of transmitting a data packet. A data packet canbe the same as defined in the Bluetooth specification or any other datapacket that transmits a unique identifier. Beacons 140 may (repeatedly,continuously, or periodically) transmit data packets in set (oradjustable) intervals.

In a non-limiting example, the iBeacon system disclosed herein mayutilize iBeacons (a form of beacon) to transmit a data packet consistingmainly of three pieces of information—a Universally Unique Identifier(UUID), a major field, and a minor field. In addition, an iBeacontypically transmits that data packet repeatedly. Further informationabout beacons can be found in the Supplement to the Bluetooth CoreSpecification, Version 5, which is incorporated by reference herein. Inone embodiment, different institutions (e.g., retailers) use thesebeacons or transmitters as a hyper-local device tracking mechanism(e.g., to locate smartphones within the proximity zone). Non-limitingexamples of transmitters include an iBeacon, AltBeacon, and EddyStone, awireless router, a cellular phone, a tablet, a workstation, or any othersuitable computing or other electronic device. The UUID portion of thedata packet may be associated with the institution while the major andminor field may identify specific zone (e.g., geo-fence) within aparticular area. As described below, the analytics server 110 may be indirect connection with the user' electronic notification device 150through an application installed and executing on the user's mobiledevice.

Additional information can be gleaned from BLE signals, including anapproximate distance between the beacon 140 and the electronicnotification device 150. Furthermore, beacon 140 can be programmed tobroadcast its signals at different power levels, known as the“Broadcasting Power.” For example, the beacons 140 can transmit itsBroadcasting Power to the receiving device, which can approximate itsdistance from the beacon by comparing the Broadcasting Power to thestrength of the signal as received, known as the Received SignalStrength Indicator (RSSI). As depicted FIG. 1 , in some configurations,the analytics server 110 may utilize multiple beacons within apredetermined area where each beacon is associated with different RSSIand UUID data packets.

In some embodiments, a receiving device or an electronic notificationdevice (e.g., a smartphone or any other device configured to communicatewith a beacon) can also transmit a data packet, acting as a beacon,which can be received by another receiving device, fixed or mobile. Ineither case, fixed or mobile, this reception serves to notify thereceiver that the mobile transmitter is nearby. As an example, a mobileapplication can instruct an electronic notification device to transmit adata packet associated with a network identity, which upon reception atanother device, fixed or mobile, can indicate proximity of a user to thenetwork. For example, receiving devices can be placed throughout abuilding. These receiving devices would monitor the receiving devices'location to track the user. The system of this embodiment can then storethe information of which transmitters the user went past, and the usercan use an application to retrieve this information. In this way, thesystem described in FIG. 1 may not need permanently installed beacons toconstantly transmit data packets; and depending on the number oftransmitters needed, there can be significant cost/complexity savingsusing this method.

In some embodiments, analytics server 110 can use RSSI or triangulationto assess, more accurately, the location of electronic notificationdevice 150. For instance, the electronic notification device 150 mayreceive signals from more than one source or of more than one type,e.g., Wi-Fi, BLE, and GPS. By relying on more than once source, theseembodiments are more reliable and more accurate. Even though theembodiments disclosed herein describe using beacon technology, it isexpressly understood that the location of a user may be determined usingany other technology such as Wi-Fi, BLE, and/or GPS. The embodimentsdisclosed herein are not limited to beacon technology.

In operation, the beacons 140 may be placed in specific areas of indoorspace, such as conference rooms, hallways, kitchens, offices, and otherareas in a workspace. As described above, the analytics server 110 mayutilize more than one beacon; in those embodiments, each beacon can beconfigured such that the location signal range encompasses approximatelythe boundaries of the area (e.g., geo-fenced area). For example, asdepicted in FIG. 1 , the electronic notification device 150 is withinthe range of beacon 142 and beacon 141 (i.e., 141 a and 142 a).Therefore, the electronic notification device 150 may transmit UUIDscorresponding to beacon 141 and UUID corresponding to beacon 142 to theanalytics server 110. The analytics server 110 may gauge the strength ofthe UUIDs received from each beacon and may triangulate and identify anexact location of the electronic notification device 150 based on astrength of UUID transmittal received from each beacon.

The electronic sensors 160 may refer to multiple cameras or otherelectronic sensors installed within a predetermined location (orsometimes embedded within electronic notification device 150) to providemore accurate navigation information to the user. The electronic sensors160 may include smart camera 161, thermographic camera 162, andultrasonic camera 163. In some configurations the navigation system 100(more particularly, the analytics server 110) may use one or more of theelectronic sensors 160 to determine hazardous areas and/or obstacles.For instance, when the user requests the analytics server 110 to providenavigation services within the user's dwelling, the analytics server 110may identify one or more electronic sensors installed within the user'sdwelling, activate said sensors, receive data from each sensor, andmonitor for obstacles, hazardous areas, or moving objects.

The smart camera 161 may be an intelligent camera equipped with machinevision system, which, in addition to image capture circuitry, may becapable of extracting application-specific information from the capturedimages, along with generating event-specific descriptions. In someconfigurations, the smart camera 161 may be self-contained, stand-alonevision system with a built-in image sensor. For instance, the smartcamera 161 may transmit media elements (e.g., images and/or videos)along with insights (e.g., recognition of items, item locations, and/oran estimated distance to the) to the analytics server 110. In someconfigurations, the smart camera 161 may transmit the media elements tothe analytics server 110 whereby the analytics server 110 analyzes themedia elements received in order to recognize objects or generate otherinsights. For instance, the smart camera 161 may periodically captureimages of the user's dwelling and identify various objects (e.g., stove,furniture, and the like) and send in machine-readable file in a formatcompatible to be analyzed by the analytics server 110.

The thermographic camera 162 may be a device that forms an image usinginfrared radiation. In some configurations, instead of the 400-700 nmrange of visible light camera, the thermographic camera 162 may operatein wavelengths as long as 14,000 nm. Infrared energy is a part of theelectromagnetic spectrum, which encompasses radiation from gamma rays,x-rays, ultraviolet, thin region of visible light, infrared, tarahertzwaves, microwaves, and radio waves. All objects commit a certain amountof blackbody radiation as a function of their temperatures. Forinstance, the higher an object temperature, the more infrared radiationis presented as black—body radiation. The thermographic camera 162 candetect this radiation in a way similar to the way an ordinary cameradetects visible light. The thermographic camera 162 can work in totaldarkness and without the need for light emission. Simply put, thethermographic camera 162 provides thermographic data, e.g., a heat mapto the analytics server 110. For instance, the thermographic camera 162may indicate existence of a warm body, or a warm stove near a user whois visually impaired. Upon analyzing the thermographic data receivedfrom the thermographic camera 162, the analytics server 110 may identifymovement of warm bodies, such as pets or other inhabitants of adwelling.

The ultrasonic camera 163 may be a form of ultrasonic transducer thatadmits ultrasonic wave (e.g., sound at a frequency higher than the humanear can hear) and receives reflections from the nearby objects. When theultrasonic camera 163 detects a change in the reflection received, theultrasonic camera 163 can identify the source of the reflection change.In other words, the ultrasonic camera can use ultrasonic wavelength toidentify a static or moving object.

In another embodiment, instead of one or more devices capable ofcapturing an image, the system may include a sensor that detects thepresence of an obstacle. The sensor may detect the size, location,and/or distance of the obstacle. In some instances, a camera may be usedto detect the presence of the obstacle even though an image is notcaptured during the process.

In some configurations, the analytics server 110 may utilize motionsensors/detectors. A motion detector is a device that detects movingobjects. The motion may contain an optical, microwave, or acousticsensor that can detect a mission or reflection of an object. Forinstance, changes in the optical, microwave, or acoustic field and thedevices proximity are interpreted by passive infrared, microwave,ultrasonic, tomographic motion detector, video camera software, and/ordigestion detectors.

The electronic notification device 150 may be any computing device usedto receive beacon UUID signals, transmit the UUID signals to theanalytics server 110, receive instructions from the analytics server110, and/or present warning notifications to the user. For example, asdescribed below, the electronic notification device 150 may be anywearable navigation device including a wristband, a bracelet, ring, andthe like. In some configurations, the electronic notification device maybe a mobile device (e.g., a cellular phone) or a smart watch, as shownin FIG. 1 . In some configurations, the circuitry configured to achievethe above-mentioned functionalities associated with the electronicnotification device 150 may be included in one or more articles ofclothing. For instance, a hat, as the hat shown in FIG. 1 , or a belt(or other articles of clothing) may include a receiver to receive theUUID signals, a transmitter to transmit location information of the userto the analytics server 110, and/or a notification module to notify theuser (e.g., haptic notification or a speaker to present auditorynotifications to the user). As described below, the analytics server maycommunicate with more than one electronic navigation device 150 whereeach device is configured for a specific functionality. For example oneelectronic notification device 150 may be a mobile device configured toreceive and transmit UUIDs of various beacons; another electronicnotification device 150 may be a wearable device with a proximity sensorconfigured to collect and transmit obstacle data, and a third electronicnotification device 150 may be a wearable navigation device, such as ahat, configured to transmit the warning notifications to the user.

In some configurations, the user may utilize more than one electronicnotification devices. For instance, the user may utilize a cellularphone to transmit location information to the analytics server 110.Additionally, the analytics server 110 may instruct another electronicnotification device to present the notifications to the user. Therefore,even though electronic notification device 150 is shown as a singleelectronic device, in other configurations, multiple electronic devicesand/or wearable navigation devices can be used. Furthermore, asdescribed above, the analytics server 110 may also use othercapabilities of the user's mobile device. For example, the analyticsserver 110 may activate a GPS tracking module of the user's mobiledevice in order to monitor the user's location.

As described above, electronic notification device 150 may also includeone or more additional sensors and may transmit movement data to theanalytics server 110. The electronic notification device 150 may includeone or more proximity sensors to track the user's movements and identifywhether the user is within a predetermined proximity to a hazardous areaand/or an obstacle. In some configurations, electronic notificationdevice 150 may include an accelerometer to measure acceleration of theuser's movements. An accelerometer measures proper acceleration, whichis the acceleration and experiences relative to freefall and isacceleration felt by people and objects. The accelerometer embedded orotherwise associated with the electronic notification device 150 maymeasure the user's single or multi-axis movement acceleration.

In some configurations, the electronic notification device 150 may alsoinclude a gyroscope sensor to measure the user's movement orientationand or angular velocity. Using the information received from thegyroscope sensor, the analytics server 110 may determine a directionthat the user is facing or whether the user has fallen. In someconfigurations, the electronic notification device 150 may also includea compass sensor to receive additional information regarding thedirection of movement of the user. In another configuration, theelectronic notification device 150 may include an altimeter sensor tomeasure an altitude/elevation associated with the user. The analyticsserver 110 may use the data received from the altimeter sensor tofurther identify the user's movement, such as climbing the stairs.

The external data source 130 may represent any data received from anexternal data source including the World Wide Web or other databases. Inan embodiment, the external data source 130 may represent GPS datareceived from a navigation resource. For instance, the user's electronicnotification device 150 or the user's mobile device may be GPS-capablethrough a third-party application executing on the electronicnotification device 150 or the user's mobile device. In thoseembodiments, the analytics server 110 may retrieve GPS specific data,e.g., the user's GPS location from a third party (e.g., external datasource 130).

Referring now to FIG. 2 , a flowchart depicting operational steps of amethod for providing a navigation system having an electronic wearablenavigation device is illustrated. Steps of the method 200 may beimplemented using one or more features described FIG. 1 . Method 200does not imply any limitations with regard to the environments orembodiments that may be implemented. Modifications to the depictedenvironment or embodiment shown in FIG. 2 may be made.

At step 210 and 220, the analytics server may periodically receivelocation-specific data from an electronic navigation device operated bya user. The analytics server may also identify and monitor the user'slocation based on the received location data. As discussed above,electronic notification devices can be wearable devices, can be embeddedwithin different articles of clothing, or can refer to the functionalityof an application executing on a user's mobile device. In a non-limitingexample, a user's electronic notification device may detect UUID fromone or more beacons and an application executing on the electronicnotification device (or a transmittal module of the electronicnotification device in connection with the analytics server) may thentransmit the UUIDs and any other associated information (e.g., RSSIinformation) to the analytics server. The analytics server may thenretrieve, from internal or external database, the location informationof one or more beacons associated with the received UUIDs. For instance,the analytics server may retrieve the location of the beacon associatedwith the UUID and based on the UUID, RSSI, or both may triangulate alocation associated with the user mobile device. The analytics servermay periodically repeat the method described above to monitor user'slocation.

As discussed above, the analytics server may augment data received fromthe electronic notification device with other movement data. Forinstance, upon receiving location data from the user's electronicnotification devices, the analytics server may activate a GPS trackingmodule of the user's mobile device. The analytics server may also useGPS data received from the user's mobile device to track and monitor theuser's location. Furthermore, the analytics server may also activate oneor more sensors within the user's electronic notification device (e.g.,gyroscope sensor, accelerometer sensor, compass sensor, and the like).In conjunction with the other location data, the analytics server mayuse the data received from these sensors to determine the exact locationand the direction of movement of the user.

The analytics server may periodically receive location specific data(and other data described above) from the user's electronic notificationdevice and/or external sources. For instance, the analytics server maymonitor the user's location every 2, 5, 10 second, or any otherpredetermined or dynamic frequency of data collection. In this way, theanalytics server may continuously monitor of the user's whereabouts. Insome embodiments, the frequency of monitoring the user's location may bedynamically adjusted by the user or another party. For instance, theuser can opt out (for a predetermined time) of being monitored andreceiving navigation services from the analytics server. The user canalso adjust (increase or decrease) the frequency of location monitoringusing the website or the application hosted by the analytics server.

At step 230, the analytics server may periodically receive obstaclenavigation data from one or more electronic sensors, as described inFIG. 1 . For instance, the analytics server may receive thermographicdata captured by a thermographic camera. The analytics server may alsoreceive ultrasonic data capture and ultrasonic sensor or receive motiondata captured by a motion sensor, or receive one or more images from anintelligent camera sensor, as described in FIG. 1 .

In some configurations, upon identifying a location associated with theuser, the analytics server may identify one or more electronic sensorsassociated with the location and activate the identified sensors. Theanalytics server may also query location data (e.g., floor map,arrangement data) associated with a location of the beacons and theelectronic sensors. Location data, as used herein, may refer togeo-fencing, floor map data, and arrangement of furniture's or otherobjects associated with the identified location of the user. Forexample, as described in FIG. 3 , location data of a user's dwelling mayrefer to a floor plan of the user's dwelling, location dimensions andarrangements of different rooms, different objects, and items. Using thelocation data retrieved, the analytics server may identify movement ofan object inconsistent with the location data. Determination of anobstacle or hazard is further described in FIG. 3 .

At step 240, the analytics server may transmit an activation signal tothe user's electronic notification device or mobile device and instructthe user's electronic notification device or mobile device to present awarning notification. The analytics server may determine that the useris within a predetermined proximity of an obstacle or a hazardous area.For instance, the analytics server may determine that the user is withintwo, five, or any other predetermined distance from the stairways. Theanalytics server may also consider the user's movements, direction ofmovement, velocity and acceleration of movement as well. For instance,the analytics server may determine that the user is moving at a speed of1 ft/s towards the stairways. In some embodiments, the analytics servermay determine that even though the user is within the pre-determinedproximity of an obstacle and or a hazardous area, the user is moving inan opposite direction, e.g., away from the obstacle or the hazardousarea. If the analytics server identifies an obstacle and/or thehazardous area and determines that the user is moving towards theobstacle and/or the hazardous area, the analytics server may transmit anactivation signal and instruct the user's electronic notification deviceor mobile device to warn the user.

The analytics server may determine the notification (e.g., intensity,duration, type) of the notification based on the user's preferences, theuser's location, and/or the user's movements. For instance, theanalytics server may instruct the electronic notification device topresent an auditory notification via a speaker operatively associatedwith the electronic notification devices. In that embodiment, theanalytics server may select a predetermined auditory notification basedon the user's location. For instance, if the user is within 2 feet tothe right of the stairways, the analytics server may generate aninstruction and instruct the user's electronic notification device toplay a pre-recorded audio file (e.g., “stairways on your right”). Insome other embodiments, the notification may be haptic. For example whenthe user is within 2 feet of the stairways, the analytics server mayinstruct the user's electronic notification device (e.g., wristband) toproduce a haptic notification (e.g., vibrate) in accordance with apredetermined intensity and frequency. In some configurations, thefrequency and/or the intensity of the haptic notification may depend onthe user's proximity and/or movement towards the obstacle and/or thehazardous area.

Referring now to FIG. 2B, a schematic diagram of different warningnotifications presented by an electronic wearable navigation isillustrated. In a non-limiting example, warning notification presets areestablished to create four options for notification meaning: “hazard onthe right,” “hazard on the left,” “hazard in front,” and “hazardbehind.” FIG. 2 represents warning notification arrangement preset by auser. The presets illustrated herein can be modified to the user'spreferences. A user can access the analytics server (via an applicationor a website associated with the analytics server) and modify theillustrated presets. For instance, a visually impaired user mayeliminate the light/color warning notifications and may modify the soundand or vibration/haptic notifications.

In FIG. 2B, the top row of alert symbols indicate the settings foraudible alerts; the middle row indicates settings for haptic alerts; andthe bottom row indicates settings for light alerts. Visual alerts mayinclude different colors for different notification meaning. Forinstance, red light may indicate a hazardous area to the user's rightand green lights may indicate a hazardous area in front of the user.Similarly, the vibration intensity and/or frequency may indicate aspecific meaning. For instance, one haptic contact (e.g., tap) mayindicate a hazard to the right of the user and to have the contacts mayindicate hazard to the left of the user. As part of the settings, theuser may set preferences for the length of time for eachalert/notification type to last. For example, an audible alert can beset to last 2 seconds, vibration alert to last 1 second, and visualalert to last 5 seconds. The warning notifications presented by theelectronic notification device depend upon which of the four options fornotification meaning applies to the user's location:

For a hazardous area and/or obstacles to the user's right, the followingwarning notifications may be presented:

-   -   Audible: Rapid Interval Low Pitch Sound (2 beeps per second)    -   Vibration: Rapid and Low Intensity Vibration (2 per second)    -   Visual: Rapid Green Blinking Light (2 per second)

For hazardous area and/or obstacles to the user's left, the followingwarning notifications may be presented:

-   -   Audible: Low Pitch Sound (1 beep per second)    -   Vibration: Low Intensity Vibration (1 per second)    -   Visual: Green Quick Blinking Light (1 per second)

For hazardous area and/or obstacles in front of the user, the followingwarning notifications may be presented:

-   -   Audible: High Pitch Sound (1 per second)    -   Vibration: High Intensity Vibration (1 per second)    -   Visual: Red Blinking Light (1 per second)

For hazardous area and/or obstacles behind the user, the followingwarning notifications may be presented:

-   -   Audible: Rapid Interval High Pitch Sound (2 per second)    -   Vibration: Rapid High Intensity Vibration (2 per second)    -   Visual: Rapid Red Blinking Light (2 per second)

Referring back to FIG. 2A, the analytics server may instruct one or moreelectronic notification devices to present the above-mentioned warningnotifications. As described above, and as depicted in FIG. 2C, the usermay have more than one electronic notification devices. For instance,the user may have a wristband electronic notification device 250 on hisleft wrist and a ring electronic notification device 260. In thoseembodiments, the analytics server may modify the notificationaccordingly. For instance if the user is within the predeterminedproximity to the left of an obstacle, the analytics server may instructthe right wristband (or the left or whichever electronic notificationdevice the user prefers) to present the warning notification. Thewarning notifications may be completely modified and adjusted based onthe user's preferences. For instance, the user can instruct analyticsserver to produce warning notifications regarding any hazardous area orobstacles in front of the user only to his ring electronic notificationdevice 260. Other similar modifications may be achieved based on userpreferences, impairments, and/or disabilities.

In some configurations, electronic sensors (described as electronicsensors 160 in FIG. 1 ) can all be associated with the user's electronicnotification devices. For instance, in addition to having (or otherwisebeing associated with) the above-mentioned electronic sensors, theuser's electronic notification device may also include the electronicsensors/cameras described above. For instance, the user's electronicnotification device may include one or more of the ultrasonic camera,the motion detector, and the infrared thermographic camera. Whenutilized by the user, these sensors, in conjunction with the othersenses described above (accelerometer, alternator, gyroscope, and theother sensors described above) the user's electronic notification devicemaybe use to warn the user obstacles and or hazardous areas around theuser. In some configurations, the user may utilize more than oneelectronic notification device where each electronic notification deviceincludes one or more of the sensors described above. For instance, theuser's belt may include an accelerometer, the user's hat may includethermographic camera, and the users ring may include circuitry topresent warning notifications (e.g., haptic notification).

In some embodiments, the analytics server may store location data,notification data and preferences, and user's responses to the vacationin a database or a cloud-based storage system. The analytics server maycontinuously or periodically update such as storage. The stored data maythen be analyzed in order to provide more accurate navigation servicesto the user. For example, when the user is warned (more than apredetermined number of times) regarding a hazardous area but continuesmoving towards the hazardous area, the analytics server may determinethat the user does not consider said area hazardous. As a result, theanalytics server may modify its notifications accordingly. For example,the analytics server may no longer warn the user when the user islocated within a predetermined proximity to said location.

Referring now to FIG. 3A an example of an indoor navigation method usinga navigation system having one or more electronic wearable navigationdevices is illustrated. In the depicted embodiment, a user receivesnavigation services provided by the analytics server within dwelling300. In this embodiment, the user has previously provided a floor map ofthe dwelling 300, which indicates different areas, items, hazardousareas within the dwelling 300. For instance, the floor map depicted inFIG. 3 indicates the location of the kitchen 310, the stairs 320, theliving room 330, bedroom 340, bedroom 350, and about 360. As depicted,the dwelling 300 includes several beacons located in different areas.For instance, kitchen 310 includes beacon 311 and beacon 312; the stairs320 includes beacon 322 and beacon 321; the living room 330 includes thebeacon 331; bedroom 340 includes beacon 341 and 342; the bedroom 350includes beacon 351; and bathroom 360 includes beacon 361. Using theabove-mentioned beacons, the analytics server can geo-fence variousareas within the dwelling 300. For example using beacons 312 and 311,the analytics server may geo-fence kitchen 310 as depicted by the dashedlines. In the same manner, the analytics server may geo-fence stairs320, living room 330, bedrooms 340 and 350, and bathroom 360, asdepicted in dashed lines. As a result, when a user is within any of thedepicted geo-fenced areas, the analytics server may triangulate andidentify an exact location associated with the user.

When an electronic notification device of a user located at the location370 receives the UUID of the beacons 312 and 311, the electronicnotification device transmits the UUIDs to the analytics server. Theanalytics server may then retrieve location associated with the UUIDsreceived. Based on the UUIDs, the analytics server identifies that theuser is located within geo-fence kitchen 310. The analytics server mayalso retrieve any location data (e.g., floor map, furniture arrangement,a list of items, a list of hazardous areas and the like) associated withthe UUIDs of the beacon. For instance, when the analytics serverreceives UUID of beacon 312, the analytics server may retrieve thefloorplan as depicted in FIG. 3 , which illustrates different geo-fencedareas, a list and location of each item within the dwelling 300, andother location data described above.

The analytics server may then continuously monitor the user'swhereabouts. For instance, when the user moves to the location 371, theanalytics server can determine that the user has left the geo-fencekitchen 310 because the RSSI of beacons 311 and 312 decrease and theelectronic notification device of the user is now receiving andtransmitting UUIDs from beacons 321 and 322. Therefore, the analyticsserver can determine that the user is moving along the path 372. Becausethe location 371 is within a predetermined proximity (e.g., 2 feet) ofthe stairs 320, which has previously been designated as a hazardousarea, the analytics server generates and transmits a signal to at leastone of the user's electronic notification devices to present a warningnotification consistent with a hazardous area in front of the user. Thewarning notification, as described above, can be an auditorynotification. For instance, the users in the may play a prerecordedvoice indicating that the user is near the stairs.

In a non-limiting example, when the analytics server determines that theuser is within the dwelling 300, e.g., when the UUID received from theuser's mobile device or a wearable navigation device matches a UUID ofthe dwelling 300, the analytic server may retrieve a floor map of thedwelling 300, where the floor map identifies hazardous areas (e.g.,stairs 320) and their corresponding beacons (e.g., beacon 321 and 322).The analytics server may then monitor the location of the userthroughout the dwelling 300 and notify the user when the user islocation within a predetermined proximity to a hazardous area.

Referring now to FIG. 3B an example of an indoor navigation method usinga navigation system having one or more electronic wearable navigationdevices is illustrated. In the depicted embodiment, similar to FIG. 3 ,a user receives navigation services provided by the analytics serverwithin the dwelling 300. As described above, dwelling 300 includesseveral beacons. As depicted in FIG. 3B, the dwelling 300 also includesone or more electronic sensors. For example, the geo-fenced area in theliving room 330 includes an electronic sensor 332. Additionally, thebedroom 340 includes an electronic sensor 343. As described above, eachelectronic sensor may represent an intelligent camera, an ultrasonicsensor camera, infrared thermographic camera, and/or a motion sensor. Inthe spirit of brevity, FIG. 3B does not show a separate sensor or camerafor each electronic sensor described above. For example, the electronicsensor 332 may represent any of the above-mentioned electronic sensors.One skilled in the art will recognize that in different configurationsdifferent combinations of one or more electronic sensors and cameras maybe used.

As described above, the analytics server may continuously receiveobstacle navigation data from electronic sensors 332 and 343. As aresult, the analytics server may continuously monitor for obstacles,hazardous conditions, and/or moving objects within the dwelling 300. Forinstance, the electronic sensor 332 may determine that the obstacle 375is located within the living room 330. In some configurations, theanalytics server may retrieve location data associated with the dwelling300. If the location data does not include the identified obstacle 375,the analytics server may designate the obstacle 375 as a hazardous area.Therefore, when the user is within the predetermined proximity to theobstacle 375, the analytics server may generate the warning notificationfor the user.

In some embodiments, the analytics server may only receive (e.g.,instruct to transmit) obstacle/navigation data from electronic sensorswithin a predetermined proximity to the user. For instance, if the useris located at location 373, the analytics server may only consider datareceived from electronic sensor 332, and not sensor 343. In someconfigurations, the analytics server may reduce the frequency of datacapture for other sensors accordingly. For instance, when the user islocated within the living room 330, the analytics server may reduce thefrequency of data capture for sensor 343 in order to increase efficiencyand reduce the volume of data transmittal.

In the depicted embodiment, the user's electronic notification devicereceives UUID from beacon 331. Upon receiving the UUID and RSSI, theanalytics server determines a location of the user to be the location373. By continuously monitoring the user's location and other movementdata received from the user's electronic notification devices, theanalytics server determines that the user is moving along the path 374and towards the obstacle 375. For instance, the analytics server maydetermine the velocity and acceleration of the user's movement along thepath 374 via the data received from an accelerometer associated with atleast one of the user's electronic notification devices. The analyticsserver may also determine that the user is moving towards, and not theway from, the obstacle 375 because of the monitored location of the userand data received from the users compass and gyroscope associated withhis electronic notification devices. As a result, the analytics serverdetermines that the user is within a predetermined proximity of, andmoving towards, the obstacle 375. Therefore, the analytics serverinstructs one or more user's electronic notification devices to presenta proper warning notification to the user.

FIG. 4 illustrates using a navigation system having an electronicwearable device, according to an embodiment. As described above, theanalytics server offers indoor and outdoor navigation support for users.FIG. 4 depicts an embodiment where the analytics server provides warningnotification to a user in an outdoor setting. When the analytics serverreceives a request for outdoor navigation from a user, the analyticsserver transmits an instruction to the user's electronic notificationdevice to activate a GPS tracking device embedded or otherwiseassociated with the user's electronic notification devices. Forinstance, the analytics server may activate a GPS tracking module theuser's mobile device. In some configurations, the analytics server mayuse an API installed and executing on the user's electronic notificationdevice to retrieve location data. Additionally or alternatively, theanalytics server may directly contact third-party server andperiodically receive location data associated with the user's mobiledevice (e.g., external data source 130 in FIG. 1 ).

Using the methods described above, the analytics server may augment thedata received from the external data source (e.g., GPS tracking data)with movement data received from the user's electronic notificationdevices' movement sensors. For example, in addition to receiving GPStracking data, the analytics server may also receive the user's movementdata using the accelerometer, the velocity sensor, or other sensorsassociated with at least one of the user's electronic notificationdevices.

When analytics server determines that a user is within a predeterminedproximity to a hazardous area, the analytics server may instruct atleast one of the user's electronic notification devices' to present awarning notification, as described above. The analytics server maycontinuously monitor location information associated with user 410 usinga third party GPS tracking application installed on the user 410'smobile device. When the user 410 is within a predetermined distance froman intersection (proximity zone 420), the analytics server may transmita warning notification to the user for 410's electronic notificationdevice (e.g., an application executing on the user 410's mobile device)or one or more of the user 410's electronic notification devices.

Embodiments implemented in computer software may be implemented insoftware, firmware, middleware, microcode, hardware descriptionlanguages, or any combination thereof. A code segment ormachine-executable instructions may represent a procedure, a function, asubprogram, a program, a routine, a subroutine, a module, a softwarepackage, a class, or any combination of instructions, data structures,or program statements. A code segment may be coupled to another codesegment or a hardware circuit by passing and/or receiving information,data, arguments, parameters, or memory contents. Information, arguments,parameters, data, etc. may be passed, forwarded, or transmitted via anysuitable means including memory sharing, message passing, token passing,network transmission, etc.

The actual software code or specialized control hardware used toimplement these systems and methods is not limiting of the invention.Thus, the operation and behavior of the systems and methods weredescribed without reference to the specific software code beingunderstood software and control hardware can be designed to implementthe systems and methods based on the description herein.

When implemented in software, the functions may be stored as one or moreinstructions or code on a non-transitory computer-readable orprocessor-readable storage medium. The steps of a method or algorithmdisclosed herein may be embodied in a processor-executable softwaremodule, which may reside on a computer-readable or processor-readablestorage medium. A non-transitory computer-readable or processor-readablemedia includes both computer storage media and tangible storage mediathat facilitate transfer of a computer program from one place toanother. A non-transitory processor-readable storage media may be anyavailable media that may be accessed by a computer. By way of example,and not limitation, such non-transitory processor-readable media maycomprise Random Access Memory (RAM), Read Only Memory (ROM),Electrically Erasable Programmable Read-Only Memory (EEPROM), CD-ROM orother optical disk storage, magnetic disk storage or other magneticstorage devices, or any other tangible storage medium that may be usedto store desired program code in the form of instructions or datastructures and that may be accessed by a computer or processor. Disk anddisc, as used herein, include compact disc (CD), laser disc, opticaldisc, digital versatile disc (DVD), floppy disk, and Blu-ray disc wheredisks usually reproduce data magnetically, while discs reproduce dataoptically with lasers. Combinations of the above should also be includedwithin the scope of computer-readable media. Additionally, theoperations of a method or algorithm may reside as one or any combinationor set of codes and/or instructions on a non-transitoryprocessor-readable medium and/or computer-readable medium, which may beincorporated into a computer program product. Additionally, theoperations of the methods and system disclosed herein may reside as oneor any combination or set of codes and/or instructions on anon-transitory processor-readable medium and/or computer-readablemedium, which may be incorporated into a computer program product.

The preceding description of the disclosed embodiments is provided toenable any person skilled in the art to make or use the presentinvention. Various modifications to these embodiments will be readilyapparent to those skilled in the art, and the generic principles definedherein may be applied to other embodiments without departing from thespirit or scope of the invention. Thus, the present invention is notintended to be limited to the embodiments shown herein but is to beaccorded the widest scope consistent with the following claims and theprinciples and novel features disclosed herein.

While various aspects and embodiments have been disclosed, other aspectsand embodiments are contemplated. The various aspects and embodimentsdisclosed are for purposes of illustration and are not intended to belimiting, with the true scope and spirit being indicated by thefollowing claims.

What is claimed is:
 1. A method comprising: upon determining, by aserver, an obstacle within a predetermined proximity to a location of awearable device: generating, by the server, an instruction to present awarning notification corresponding to a distance between the location ofthe wearable device and the obstacle; and transmitting, by the server,the instruction to the wearable device, whereby upon receiving theinstruction, the wearable device presents the warning notification,wherein the server determines a location of the obstacle based on a mapassociated with the location of the wearable device.
 2. The method ofclaim 1, wherein the location of the wearable device is monitored viaone or more beacons.
 3. The method of claim 1, wherein locationinformation of the wearable device is received from a third-partylocation tracking application executing on the wearable device.
 4. Themethod of claim 1, wherein the server further determines the location ofthe obstacle using at least one of an infrared thermal imaging camera, asonar camera, an ambient light sensor, or a proximity sensor.
 5. Themethod of claim 1, wherein the wearable device is a wristband or a ring.6. The method of claim 1, wherein the warning notification furthercorresponds to a direction of movement associated with the wearabledevice.
 7. The method of claim 1, wherein the warning notificationcomprises at least one of a haptic notification, a visual notification,or an auditory notification.
 8. The method of claim 1, wherein thewearable device is incorporated into an item of clothing.
 9. The methodof claim 1, wherein the server determines that the obstacle is withinthe predetermined proximity to the wearable device based on a speed ofmovement associated with the wearable device.
 10. A system comprising: aserver comprising a processor and a non-transitory computer-readablemedium containing instructions that when executed by the processorcauses the processor to perform operations comprising: upon determiningan obstacle within a predetermined proximity to a wearable device:generating an instruction to present a warning notificationcorresponding to a distance of a location of the wearable device and theobstacle; and transmitting the instruction to the wearable device,whereby upon receiving the instruction, the wearable device presents thewarning notification, wherein the server determines a location of theobstacle based on a map associated with the location of the wearabledevice.
 11. The system of claim 10, wherein the location of the wearabledevice is monitored via one or more beacons.
 12. The system of claim 10,wherein location information of the wearable device is received from athird-party location tracking application executing on the wearabledevice.
 13. The system of claim 10, wherein the server furtherdetermines the location of the obstacle using at least one of aninfrared thermal imaging camera, a sonar camera, an ambient lightsensor, or a proximity sensor.
 14. The system of claim 10, wherein thewearable device is a wristband or a ring.
 15. The system of claim 10,wherein the warning notification further corresponds to a direction ofmovement associated with the wearable device.
 16. The system of claim10, wherein the warning notification comprises at least one of a hapticnotification, a visual notification, or an auditory notification. 17.The system of claim 10, wherein the server determines that the obstacleis within the predetermined proximity to the wearable device based on aspeed of movement associated with the wearable device.
 18. A wearabledevice having a processor configured to: receive an instruction topresent a warning notification corresponding to a distance of a locationof the wearable device and an obstacle, wherein a server generates theinstruction upon determining that the obstacle is located within apredetermined proximity to the wearable device, wherein the serverdetermines a location of the obstacle based on a map associated with thelocation of the wearable device; and present the warning notification.